package com.whfc.fse.dto;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @Description: 履带吊数据
 * @author: xugcheng
 * @version: 1.0
 * @date: 2021-10-19 11:40
 */
@Data
public class FseCrawlerDataDTO implements Serializable {

    /**
     * 履带吊ID
     */
    private Integer crawlerId;

    /**
     * 硬件平台
     */
    private String platform;

    /**
     * 硬件标识
     */
    private String sn;

    /**
     * 履带吊code
     */
    private String code;

    /**
     * 时间
     */
    private Date time;

    /**
     * 主钩吊重
     */
    private Double mainHookWeight;

    /**
     * 主钩高度
     */
    private Double mainHookHeight;

    /**
     * 主钩力矩
     */
    private Double mainHookMoment;

    /**
     * 副钩吊重
     */
    private Double viceHookWeight;

    /**
     * 副钩高度
     */
    private Double viceHookHeight;

    /**
     * 副钩力矩
     */
    private Double viceHookMoment;

    /**
     * 幅度
     */
    private Double range;

    /**
     * 风速
     */
    private Double windSpeed;

    /**
     * 回转速度
     */
    private Double turnSpeed;

    /**
     * 回转角度
     */
    private Double turnAngle;

    /**
     * 俯仰角
     */
    private Double dipAngle;

    /**
     * 水平度
     */
    private Double levelness;

    /**
     * 工况设置 {@link com.whfc.fse.enums.FseCrawlerConditions}
     */
    private Integer conditions;

    /**
     * 累计超载次数
     */
    private Long totalOverloadCnt;

    /**
     * 累计抗风作业次数
     */
    private Long totalWindWorkCnt;

    /**
     * 累计工作时长
     */
    private Long totalWorkTimes;

    /**
     * 累计吊装次数
     */
    private Long totalWorkCnt;

    /**
     * 工作循环开始
     */
    private Date workStartTime;

    /**
     * 工作循环结束
     */
    private Date workEndTime;

    /**
     * 主升动作累计次数
     */
    private Long totalMainCnt;

    /**
     * 副升动作累计次数
     */
    private Long totalViceCnt;

    /**
     * 累计回转次数
     */
    private Long totalTurnCnt;

    /**
     * 状态
     */
    private Integer state;

    /**
     * 动作
     */
    private Integer action;

    /**
     * 行程
     */
    private Integer trip;

    /**
     * 回转报警
     */
    private Integer turnWarn;

    /**
     * 主钩高度报警
     */
    private Integer mainHookHeightWarn;

    /**
     * 主钩重量报警
     */
    private Integer mainHookWeightWarn;

    /**
     * 副钩高度报警
     */
    private Integer viceHookHeightWarn;

    /**
     * 副钩重量报警
     */
    private Integer viceHookWeightWarn;

    /**
     * 防后倾报警
     */
    private Integer dipAngleWarn;

    /**
     * 风速报警
     */
    private Integer windSpeedWarn;

    /**
     * 不正常操作报警
     */
    private Integer abnormalOpWarn;

    /**
     * 回转左转
     */
    private Integer turnLeft;

    /**
     * 回转左转
     */
    private Integer turnRight;

    /**
     * 主钩上升
     */
    private Integer mainHookUp;

    /**
     * 主钩下降
     */
    private Integer mainHookDown;

    /**
     * 副钩上升
     */
    private Integer viceHookUp;

    /**
     * 副钩下降
     */
    private Integer viceHookDown;

    /**
     * 主钩抱闸状态
     */
    private Integer mainHookBrake;

    /**
     * 副钩抱闸状态
     */
    private Integer viceHookBrake;

    /**
     * 防后倾限位
     */
    private Integer dipAngleLimit;

    /**
     * 门限位
     */
    private Integer doorLimit;

    /**
     * 主钩高度上限位
     */
    private Integer mainHookHeightUpperLimit;

    /**
     * 主钩高度下限位
     */
    private Integer mainHookHeightLowerLimit;

    /**
     * 副钩高度上限位
     */
    private Integer viceHookHeightUpperLimit;

    /**
     * 副钩高度下限位
     */
    private Integer viceHookHeightLowerLimit;

    /**
     * 高度下限
     */
    private Double minHeight;

    /**
     * 高度上限
     */
    private Double maxHeight;

    /**
     * 防撞探测报警
     */
    private Integer probeDistanceWarn;

    /**
     * 防撞探测报警列表
     */
    private List<Integer> probeDistanceWarnList;

    /**
     * 防撞探测距离集合
     */
    private List<Double> probeDistanceList;

    /**
     * 是否防碰撞（0-非防碰撞硬件 1-防碰撞硬件）
     */
    private Integer collisionFlag;
}
